package com.demo.kettle.test.service;

import org.pentaho.di.core.exception.KettleException;
import org.pentaho.di.core.exception.KettleMissingPluginsException;
import org.pentaho.di.core.exception.KettleXMLException;

import java.util.concurrent.ExecutionException;

/**
 * 服务类
 *
 * @author yuanzheng
 * @since 2022-02-28
 */
public interface IKettleTestService {

    /**
     * 测试JOB文件执行
     *
     * @return 结果信息
     * @throws KettleException      执行的错误信息
     * @throws ExecutionException   执行异常
     * @throws InterruptedException 中断异常
     */
    String job() throws KettleException, ExecutionException, InterruptedException;

    /**
     * 转换文件执行测试
     *
     * @return 结果信息
     * @throws KettleException 执行的错误信息
     */
    String trans() throws KettleException;

    /**
     * 测试JOB文件执行 Slave
     *
     * @return 结果信息
     */
    String jobSlave() throws Exception;

    /**
     * 转换文件执行测试 Slave
     *
     * @return 结果信息
     */
    String transSlave() throws Exception;
}
